#! /bin/sh

/bin/mount -a

echo "
            _ _ _ _ _ _ _ _ _ _ _ _
            \  _  _   _  _ _ ___
            / /__/ \ |_/
           / __   /  -  _ ___
          / /  / /  / /
  _ _ _ _/ /  /  \_/  \_ ______
___________\___\__________________
"

rm -f /dev/cmem
rm -f /dev/davinci_previewer
rm -f /dev/davinci_pwm0
rm -f /dev/davinci_resizer
rm -f /dev/dm365_aew
rm -f /dev/dm365_af
rm -f /dev/dm365_facedetect
rm -f /dev/dm365mmap
rm -f /dev/edma
rm -f /dev/fm2010
rm -f /dev/irqk
rm -f /dev/kmem
rm -f /dev/misc_control
rm -f /dev/cx20707
rm -f /dev/mmcblk*

mkdir /dev/snd
mknod /dev/snd/controlC0 c 116 0
mknod /dev/snd/pcmC0D0c  c 116 24
mknod /dev/snd/pcmC0D0p  c 116 16
mknod /dev/snd/timer     c 116 33

cd /opt/dm365/drivers/
insmod /opt/dm365/drivers/tsc2007.ko
insmod /opt/dm365/drivers/dm365_keypad.ko
insmod /opt/dm365/drivers/misc_control.ko
insmod /opt/dm365/drivers/fm2010.ko
insmod /opt/dm365/drivers/cx20707.ko

insmod /opt/dm365/drivers/usbcore.ko     
insmod /opt/dm365/drivers/musb_hdrc.ko   
insmod /opt/dm365/drivers/usbserial.ko   
insmod /opt/dm365/drivers/pl2303.ko   

cd /opt/dm365/drivers
./loadmodules.sh
echo /sbin/mdev > /proc/sys/kernel/hotplug
mdev -s
sleep 3
tmp_err2=$(dmesg | grep 'yaffs tragedy:' -c)
tmp_err3=$(dmesg | grep 'Invalid argument' -c)
tmp_err2=`expr $tmp_err2 + $tmp_err3`
echo $tmp_err2

mkdir -p /usr/mnt
mount -t yaffs2 /dev/mtdblock6 /usr/mnt

#if mount fail, just erase all flash , and remount it
tmp_err=$(dmesg | grep 'yaffs tragedy:' -c)
tmp_err1=$(dmesg | grep 'Invalid argument' -c)
tmp_err=`expr $tmp_err + $tmp_err1`

echo $tmp_err

if ( test $tmp_err -gt $tmp_err2)
then
	echo "mount -t yaffs2 /dev/mtdblock6 /usr/mnt error, remount it"
	sleep 1
	umount /usr/mnt
	sleep 1
	flash_eraseall /dev/mtd6
	sleep 1
	reboot
fi

if [ -e /usr/mnt/needupdate ] 
then
	rm -f /usr/mnt/needupdate
fi

echo =============begin=========================
sleep 1 
. /etc/init.d/__checkforupdate.sh 
echo =============end=========================

#mount NFS
#mount -n -o nolock 192.168.15.245:/work /mnt 

#auto star the Application
cd /usr/app
#exec ./system_detect 2 &
#exec ./DM365_AllegroIndoor_debug &
#exec ./DM365_AnalogIndoor_debug &
#exec ./DM365_AnalogIndoor &
